home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 1999 August / SGI Freeware 1999 August.iso / dist / fw_bash.idb / usr / freeware / catman / u_man / cat1 / builtins.Z / builtins
Encoding:
Text File  |  1999-04-16  |  84.7 KB  |  1,519 lines

  1.  
  2.  
  3.  
  4.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.       bash,    :, ., alias, bg, bind, break, builtin, case, cd,
  10.       command, continue, declare, dirs, disown, echo, enable,
  11.       eval,    exec, exit, export, fc,    fg, for, getopts, hash,    help,
  12.       history, if, jobs, kill, let,    local, logout, popd, pushd,
  13.       pwd, read, readonly, return, set, shift, shopt, source,
  14.       suspend, test, times,    trap, type, typeset, ulimit, umask,
  15.       unalias, unset, until, wait, while - bash built-in commands,
  16.       see bbbbaaaasssshhhh(1)
  17.  
  18.      BBBBAAAASSSSHHHH BBBBUUUUIIIILLLLTTTTIIIINNNN CCCCOOOOMMMMMMMMAAAANNNNDDDDSSSS
  19.       Unless otherwise noted, each builtin command documented in
  20.       this section as accepting options preceded by    ---- accepts --------
  21.       to signify the end of    the options.
  22.  
  23.       :::: [_a_r_g_u_m_e_n_t_s]
  24.            No effect; the command does nothing beyond expanding
  25.            _a_r_g_u_m_e_n_t_s and performing    any specified redirections.  A
  26.            zero exit code is returned.
  27.  
  28.        ....  _f_i_l_e_n_a_m_e [_a_r_g_u_m_e_n_t_s]
  29.       ssssoooouuuurrrrcccceeee _f_i_l_e_n_a_m_e [_a_r_g_u_m_e_n_t_s]
  30.            Read and    execute    commands from _f_i_l_e_n_a_m_e in the current
  31.            shell environment and return the    exit status of the
  32.            last command executed from _f_i_l_e_n_a_m_e.  If    _f_i_l_e_n_a_m_e does
  33.            not contain a slash, file names in PPPPAAAATTTTHHHH are used    to
  34.            find the    directory containing _f_i_l_e_n_a_m_e.    The file
  35.            searched    for in PPPPAAAATTTTHHHH need not be    executable.  The
  36.            current directory is searched if    no file    is found in
  37.            PPPPAAAATTTTHHHH.  If the ssssoooouuuurrrrcccceeeeppppaaaatttthhhh    option to the sssshhhhoooopppptttt builtin
  38.            command is turned off, the PPPPAAAATTTTHHHH is not searched.     If
  39.            any _a_r_g_u_m_e_n_t_s are supplied, they    become the positional
  40.            parameters when _f_i_l_e_n_a_m_e    is executed.  Otherwise    the
  41.            positional parameters are unchanged.  The return    status
  42.            is the status of    the last command exited    within the
  43.            script (0 if no commands    are executed), and false if
  44.            _f_i_l_e_n_a_m_e    is not found or    cannot be read.
  45.  
  46.       aaaalllliiiiaaaassss    [----pppp] [_n_a_m_e[=_v_a_l_u_e] ...]
  47.            AAAAlllliiiiaaaassss with no arguments or with the ----pppp option prints
  48.            the list    of aliases in the form aaaalllliiiiaaaassss _n_a_m_e=_v_a_l_u_e    on
  49.            standard    output.     When arguments    are supplied, an alias
  50.            is defined for each _n_a_m_e    whose _v_a_l_u_e is given.  A
  51.            trailing    space in  _v_a_l_u_e    causes the next    word to    be
  52.            checked for alias substitution when the alias is
  53.            expanded.  For each _n_a_m_e    in the argument    list for which
  54.            no _v_a_l_u_e    is supplied, the name and value    of the alias
  55.            is printed.  AAAAlllliiiiaaaassss returns true unless a    _n_a_m_e is    given
  56.            for which no alias has been defined.
  57.  
  58.       bbbbgggg [_j_o_b_s_p_e_c]
  59.            Resume the suspended job    _j_o_b_s_p_e_c    in the background, as
  60.            if it had been started with &&&&.  If _j_o_b_s_p_e_c is not
  61.  
  62.  
  63.      Page 1                         (printed 3/25/99)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  71.  
  72.  
  73.  
  74.            present,    the shell's notion of the _c_u_r_r_e_n_t _j_o_b is used.
  75.            bbbbgggg _j_o_b_s_p_e_c returns 0 unless run when job    control    is
  76.            disabled    or, when run with job control enabled, if
  77.            _j_o_b_s_p_e_c was not found or    started    without    job control.
  78.  
  79.       bbbbiiiinnnndddd [----mmmm _k_e_y_m_a_p] [----llllppppssssvvvvPPPPSSSSVVVV]
  80.       bbbbiiiinnnndddd [----mmmm _k_e_y_m_a_p] [----qqqq _f_u_n_c_t_i_o_n] [----uuuu _f_u_n_c_t_i_o_n] [----rrrr _k_e_y_s_e_q]
  81.       bbbbiiiinnnndddd [----mmmm _k_e_y_m_a_p] ----ffff _f_i_l_e_n_a_m_e
  82.       bbbbiiiinnnndddd [----mmmm _k_e_y_m_a_p] _k_e_y_s_e_q:_f_u_n_c_t_i_o_n-_n_a_m_e
  83.            Display current rrrreeeeaaaaddddlllliiiinnnneeee    key and    function bindings, or
  84.            bind a key sequence to a    rrrreeeeaaaaddddlllliiiinnnneeee function or macro.
  85.            The binding syntax accepted is identical    to that    of
  86.            ._i_n_p_u_t_r_c, but each binding must be passed as a separate
  87.            argument; e.g., '"\C-x\C-r": re-read-init-file'.
  88.            Options,    if supplied, have the following    meanings:
  89.            ----mmmm _k_e_y_m_a_p
  90.             Use    _k_e_y_m_a_p as the keymap to    be affected by the
  91.             subsequent bindings.  Acceptable _k_e_y_m_a_p names are
  92.             _e_m_a_c_s, _e_m_a_c_s-_s_t_a_n_d_a_r_d, _e_m_a_c_s-_m_e_t_a, _e_m_a_c_s-_c_t_l_x, _v_i,
  93.             _v_i-_c_o_m_m_a_n_d,    and _v_i-_i_n_s_e_r_t.    _v_i is equivalent to
  94.             _v_i-_c_o_m_m_a_n_d;    _e_m_a_c_s is equivalent to _e_m_a_c_s-_s_t_a_n_d_a_r_d.
  95.            ----llll   List the names of all rrrreeeeaaaaddddlllliiiinnnneeee functions.
  96.            ----pppp   Display rrrreeeeaaaaddddlllliiiinnnneeee function names and    bindings in
  97.             such a way that they can be    re-read.
  98.            ----PPPP   List current rrrreeeeaaaaddddlllliiiinnnneeee function names and bindings.
  99.            ----vvvv   Display rrrreeeeaaaaddddlllliiiinnnneeee variable names and    values in such
  100.             a way that they can    be re-read.
  101.            ----VVVV   List current rrrreeeeaaaaddddlllliiiinnnneeee variable names and values.
  102.            ----ssss   Display rrrreeeeaaaaddddlllliiiinnnneeee key sequences bound to macros and
  103.             the    strings    they output in such a way that they
  104.             can    be re-read.
  105.            ----SSSS   Display rrrreeeeaaaaddddlllliiiinnnneeee key sequences bound to macros and
  106.             the    strings    they output.
  107.            ----ffff _f_i_l_e_n_a_m_e
  108.             Read key bindings from _f_i_l_e_n_a_m_e.
  109.            ----qqqq _f_u_n_c_t_i_o_n
  110.             Query about    which keys invoke the named _f_u_n_c_t_i_o_n.
  111.            ----uuuu _f_u_n_c_t_i_o_n
  112.             Unbind all keys bound to the named _f_u_n_c_t_i_o_n.
  113.            ----rrrr _k_e_y_s_e_q
  114.             Remove any current binding for _k_e_y_s_e_q.
  115.  
  116.            The return value    is 0 unless an unrecognized option is
  117.            given or    an error occurred.
  118.  
  119.       bbbbrrrreeeeaaaakkkk    [_n]
  120.            Exit from within    a ffffoooorrrr, wwwwhhhhiiiilllleeee, uuuunnnnttttiiiillll, or    sssseeeelllleeeecccctttt loop.
  121.            If _n is specified, break    _n levels.  _n must be _> 1.  If
  122.            _n is greater than the number of enclosing loops,    all
  123.            enclosing loops are exited.  The    return value is    0
  124.            unless the shell    is not executing a loop    when bbbbrrrreeeeaaaakkkk is
  125.            executed.
  126.  
  127.  
  128.  
  129.      Page 2                         (printed 3/25/99)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  137.  
  138.  
  139.  
  140.       bbbbuuuuiiiillllttttiiiinnnn _s_h_e_l_l-_b_u_i_l_t_i_n    [_a_r_g_u_m_e_n_t_s]
  141.            Execute the specified shell builtin, passing it
  142.            _a_r_g_u_m_e_n_t_s, and return its exit status.  This is useful
  143.            when defining a function    whose name is the same as a
  144.            shell builtin, retaining    the functionality of the
  145.            builtin within the function.  The ccccdddd builtin is
  146.            commonly    redefined this way.  The return    status is
  147.            false if    _s_h_e_l_l-_b_u_i_l_t_i_n is not a shell builtin command.
  148.  
  149.       ccccdddd [----LLLLPPPP] [_d_i_r]
  150.            Change the current directory to _d_i_r.  The variable HHHHOOOOMMMMEEEE
  151.            is the default _d_i_r.  The    variable CCCCDDDDPPPPAAAATTTTHHHH    defines    the
  152.            search path for the directory containing    _d_i_r.
  153.            Alternative directory names in CCCCDDDDPPPPAAAATTTTHHHH are separated by
  154.            a colon (:).  A null directory name in CCCCDDDDPPPPAAAATTTTHHHH is    the
  155.            same as the current directory, i.e., ``....''.  If _d_i_r
  156.            begins with a slash (/),    then CCCCDDDDPPPPAAAATTTTHHHH is not used. The
  157.            ----PPPP option says to use the physical directory structure
  158.            instead of following symbolic links (see    also the ----PPPP
  159.            option to the sssseeeetttt builtin command); the ----LLLL option
  160.            forces symbolic links to    be followed.  An argument of ----
  161.            is equivalent to    $$$$OOOOLLLLDDDDPPPPWWWWDDDD.  The return value is true if
  162.            the directory was successfully changed; false
  163.            otherwise.
  164.  
  165.       ccccoooommmmmmmmaaaannnndddd [----ppppVVVVvvvv] _c_o_m_m_a_n_d [_a_r_g ...]
  166.            Run _c_o_m_m_a_n_d with    _a_r_g_s suppressing the normal shell
  167.            function    lookup.    Only builtin commands or commands
  168.            found in    the PPPPAAAATTTTHHHH are executed.    If the ----pppp option is
  169.            given, the search for _c_o_m_m_a_n_d is    performed using    a
  170.            default value for PPPPAAAATTTTHHHH that is guaranteed to find all
  171.            of the standard utilities.  If either the ----VVVV or ----vvvv
  172.            option is supplied, a description of _c_o_m_m_a_n_d is
  173.            printed.     The ----vvvv    option causes a    single word indicating
  174.            the command or file name    used to    invoke _c_o_m_m_a_n_d to be
  175.            displayed; the ----VVVV option    produces a more    verbose
  176.            description.  If    the ----VVVV or ----vvvv option is supplied, the
  177.            exit status is 0    if _c_o_m_m_a_n_d was found, and 1 if not.
  178.            If neither option is supplied and an error occurred or
  179.            _c_o_m_m_a_n_d cannot be found,    the exit status    is 127.
  180.            Otherwise, the exit status of the ccccoooommmmmmmmaaaannnndddd builtin is
  181.            the exit    status of _c_o_m_m_a_n_d.
  182.  
  183.       ccccoooonnnnttttiiiinnnnuuuueeee [_n]
  184.            Resume the next iteration of the    enclosing ffffoooorrrr, wwwwhhhhiiiilllleeee,
  185.            uuuunnnnttttiiiillll, or sssseeeelllleeeecccctttt    loop.  If _n is specified, resume at
  186.            the _nth enclosing loop.    _n must be _> 1.    If _n is
  187.            greater than the    number of enclosing loops, the last
  188.            enclosing loop (the ``top-level'' loop) is resumed.
  189.            The return value    is 0 unless the    shell is not executing
  190.            a loop when ccccoooonnnnttttiiiinnnnuuuueeee is executed.
  191.  
  192.  
  193.  
  194.  
  195.      Page 3                         (printed 3/25/99)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  203.  
  204.  
  205.  
  206.       ddddeeeeccccllllaaaarrrreeee [----aaaaffffFFFFiiiirrrrxxxx] [----pppp] [_n_a_m_e[=_v_a_l_u_e]]
  207.       ttttyyyyppppeeeesssseeeetttt [----aaaaffffFFFFiiiirrrrxxxx] [----pppp] [_n_a_m_e[=_v_a_l_u_e]]
  208.            Declare variables and/or    give them attributes.  If no
  209.            _n_a_m_es are given then display the    values of variables.
  210.            The ----pppp option will display the attributes and values of
  211.            each _n_a_m_e.  When    ----pppp is used, additional options are
  212.            ignored.     The ----FFFF    option inhibits    the display of
  213.            function    definitions; only the function name and
  214.            attributes are printed.    The ----FFFF option implies ----ffff.  The
  215.            following options can be    used to    restrict output    to
  216.            variables with the specified attribute or to give
  217.            variables attributes:
  218.            ----aaaa   Each _n_a_m_e is an array variable (see    AAAArrrrrrrraaaayyyyssss above).
  219.            ----ffff   Use    function names only.
  220.            ----iiii   The    variable is treated as an integer; arithmetic
  221.             evaluation (see AAAARRRRIIIITTTTHHHHMMMMEEEETTTTIIIICCCC EEEEVVVVAAAALLLLUUUUAAAATTTTIIIIOOOONNNN )))) is
  222.             performed when the variable    is assigned a value.
  223.            ----rrrr   Make _n_a_m_es readonly.  These    names cannot then be
  224.             assigned values by subsequent assignment
  225.             statements or unset.
  226.            ----xxxx   Mark _n_a_m_es for export to subsequent    commands via
  227.             the    environment.
  228.  
  229.            Using `+' instead of `-'    turns off the attribute
  230.            instead,    with the exception that    ++++aaaa may not be used to
  231.            destroy an array    variable.  When    used in    a function,
  232.            makes each _n_a_m_e local, as with the llllooooccccaaaallll    command.  The
  233.            return value is 0 unless    an invalid option is
  234.            encountered, an attempt is made to define a function
  235.            using "-f foo=bar", an attempt is made to assign    a
  236.            value to    a readonly variable, an    attempt    is made    to
  237.            assign a    value to an array variable without using the
  238.            compound    assignment syntax (see AAAArrrrrrrraaaayyyyssss above), one of
  239.            the _n_a_m_e_s is not    a valid    shell variable name, an
  240.            attempt is made to turn off readonly status for a
  241.            readonly    variable, an attempt is    made to    turn off array
  242.            status for an array variable, or    an attempt is made to
  243.            display a non-existent function with -f.
  244.  
  245.       ddddiiiirrrrssss [[[[----ccccllllppppvvvv]]]] [[[[++++_n]]]] [[[[----_n]]]]
  246.            Without options,    displays the list of currently
  247.            remembered directories.    The default display is on a
  248.            single line with    directory names    separated by spaces.
  249.            Directories are added to    the list with the ppppuuuusssshhhhdddd
  250.            command;    the ppppooooppppdddd command removes entries from the
  251.            list.
  252.            ++++_n   Displays the _nth entry counting from the left of
  253.             the    list shown by ddddiiiirrrrssss when    invoked    without
  254.             options, starting with zero.
  255.            ----_n   Displays the _nth entry counting from the right of
  256.             the    list shown by ddddiiiirrrrssss when    invoked    without
  257.             options, starting with zero.
  258.  
  259.  
  260.  
  261.      Page 4                         (printed 3/25/99)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  269.  
  270.  
  271.  
  272.            ----cccc   Clears the directory stack by deleting all of the
  273.             entries.
  274.            ----llll   Produces a longer listing; the default listing
  275.             format uses    a tilde    to denote the home directory.
  276.            ----pppp   Print the directory    stack with one entry per line.
  277.            ----vvvv   Print the directory    stack with one entry per line,
  278.             prefixing each entry with its index    in the stack.
  279.  
  280.            The return value    is 0 unless an invalid option is
  281.            supplied    or _n indexes beyond the    end of the directory
  282.            stack.
  283.  
  284.       ddddiiiissssoooowwwwnnnn [----aaaarrrr] [----hhhh] [_j_o_b_s_p_e_c ...]
  285.            Without options,    each _j_o_b_s_p_e_c is    removed    from the table
  286.            of active jobs.    If the ----hhhh option is given, each
  287.            _j_o_b_s_p_e_c is not removed from the table, but is marked so
  288.            that SSSSIIIIGGGGHHHHUUUUPPPP is not sent to the job if the shell
  289.            receives    a SSSSIIIIGGGGHHHHUUUUPPPP.  If no _j_o_b_s_p_e_c is present, and
  290.            neither the ----aaaa nor the ----rrrr option    is supplied, the
  291.            _c_u_r_r_e_n_t _j_o_b is used.  If    no _j_o_b_s_p_e_c is supplied,    the ----aaaa
  292.            option means to remove or mark all jobs;    the ----rrrr option
  293.            without a _j_o_b_s_p_e_c argument restricts operation to
  294.            running jobs.  The return value is 0 unless a _j_o_b_s_p_e_c
  295.            does not    specify    a valid    job.
  296.  
  297.       eeeecccchhhhoooo [----nnnneeeeEEEE] [_a_r_g ...]
  298.            Output the _a_r_gs,    separated by spaces, followed by a
  299.            newline.     The return status is always 0.     If ----nnnn is
  300.            specified, the trailing newline is suppressed.  If the
  301.            ----eeee option is given, interpretation of the following
  302.            backslash-escaped characters is enabled.     The ----EEEE    option
  303.            disables    the interpretation of these escape characters,
  304.            even on systems where they are interpreted by default.
  305.            eeeecccchhhhoooo does not interpret -------- to mean the end of options.
  306.            eeeecccchhhhoooo interprets the following escape sequences:
  307.            \\\\aaaa   alert (bell)
  308.            \\\\bbbb   backspace
  309.            \\\\cccc   suppress trailing newline
  310.            \\\\eeee   an escape character
  311.            \\\\ffff   form feed
  312.            \\\\nnnn   new    line
  313.            \\\\rrrr   carriage return
  314.            \\\\tttt   horizontal tab
  315.            \\\\vvvv   vertical tab
  316.            \\\\\\\\   backslash
  317.            \\\\_n_n_n the    character whose    ASCII code is the octal    value
  318.             _n_n_n    (one to    three digits)
  319.            \\\\xxxx_n_n_n
  320.             the    character whose    ASCII code is the hexadecimal
  321.             value _n_n_n (one to three digits)
  322.  
  323.       eeeennnnaaaabbbblllleeee [----aaaaddddnnnnppppssss] [----ffff _f_i_l_e_n_a_m_e]    [_n_a_m_e ...]
  324.  
  325.  
  326.  
  327.      Page 5                         (printed 3/25/99)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  335.  
  336.  
  337.  
  338.            Enable and disable builtin shell    commands.  Disabling a
  339.            builtin allows a    disk command which has the same    name
  340.            as a shell builtin to be    executed with specifying a
  341.            full pathname, even though the shell normally searches
  342.            for builtins before disk    commands.  If ----nnnn is used, each
  343.            _n_a_m_e is disabled; otherwise, _n_a_m_e_s are enabled.    For
  344.            example,    to use the tttteeeesssstttt    binary found via the PPPPAAAATTTTHHHH
  345.            instead of the shell builtin version, run enable    -n
  346.            test....  TTTThhhheeee ----ffff option means to load the new builtin
  347.            command _n_a_m_e from shared    object _f_i_l_e_n_a_m_e, on systems
  348.            that support dynamic loading.  The ----dddd option will
  349.            delete a    builtin    previously loaded with ----ffff.  If no _n_a_m_e
  350.            arguments are given, or if the ----pppp option    is supplied, a
  351.            list of shell builtins is printed.  With    no other
  352.            option arguments, the list consists of all enabled
  353.            shell builtins.    If ----nnnn is supplied, only    disabled
  354.            builtins    are printed.  If ----aaaa is supplied, the list
  355.            printed includes    all builtins, with an indication of
  356.            whether or not each is enabled.    If ----ssss is supplied, the
  357.            output is restricted to the POSIX _s_p_e_c_i_a_l builtins.
  358.            The return value    is 0 unless a _n_a_m_e is not a shell
  359.            builtin or there    is a problem loading a new builtin
  360.            from a shared object.
  361.  
  362.       eeeevvvvaaaallll [_a_r_g ...]
  363.            The _a_r_gs    are read and concatenated together into    a
  364.            single command.    This command is    then read and executed
  365.            by the shell, and its exit status is returned as    the
  366.            value of    eeeevvvvaaaallll.  If there    are no _a_r_g_s, or    only null
  367.            arguments, eeeevvvvaaaallll returns 0.
  368.  
  369.       eeeexxxxeeeecccc [----ccccllll] [----aaaa _n_a_m_e] [_c_o_m_m_a_n_d    [_a_r_g_u_m_e_n_t_s]]
  370.            If _c_o_m_m_a_n_d is specified,    it replaces the    shell.    No new
  371.            process is created.  The    _a_r_g_u_m_e_n_t_s become the arguments
  372.            to _c_o_m_m_a_n_d.  If the ----llll option is    supplied, the shell
  373.            places a    dash in    the zeroth arg passed to _c_o_m_m_a_n_d.
  374.            This is what _l_o_g_i_n(1) does.  The    ----cccc option causes
  375.            _c_o_m_m_a_n_d to be executed with an empty environment.  If
  376.            ----aaaa is supplied, the shell passes    _n_a_m_e as    the zeroth
  377.            argument    to the executed    command.  If _c_o_m_m_a_n_d cannot be
  378.            executed    for some reason, a non-interactive shell
  379.            exits, unless the shell option eeeexxxxeeeeccccffffaaaaiiiillll is enabled, in
  380.            which case it returns failure.  An interactive shell
  381.            returns failure if the file cannot be executed.    If
  382.            _c_o_m_m_a_n_d is not specified, any redirections take effect
  383.            in the current shell, and the return status is 0.  If
  384.            there is    a redirection error, the return    status is 1.
  385.  
  386.       eeeexxxxiiiitttt [_n]
  387.            Cause the shell to exit with a status of    _n.  If _n is
  388.            omitted,    the exit status    is that    of the last command
  389.            executed.  A trap on EEEEXXXXIIIITTTT is executed before the    shell
  390.  
  391.  
  392.  
  393.      Page 6                         (printed 3/25/99)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  401.  
  402.  
  403.  
  404.            terminates.
  405.  
  406.       eeeexxxxppppoooorrrrtttt [----ffffnnnn] [_n_a_m_e[=_w_o_r_d]] ...
  407.       eeeexxxxppppoooorrrrtttt ----pppp
  408.            The supplied _n_a_m_e_s are marked for automatic export to
  409.            the environment of subsequently executed    commands.  If
  410.            the ----ffff option is    given, the _n_a_m_e_s refer to functions.
  411.            If no _n_a_m_e_s are given, or if the    ----pppp option is supplied,
  412.            a list of all names that    are exported in    this shell is
  413.            printed.     The ----nnnn    option causes the export property to
  414.            be removed from the named variables.  eeeexxxxppppoooorrrrtttt returns an
  415.            exit status of 0    unless an invalid option is
  416.            encountered, one    of the _n_a_m_e_s is    not a valid shell
  417.            variable    name, or ----ffff is supplied    with a _n_a_m_e that is
  418.            not a function.
  419.  
  420.       ffffcccc [----eeee _e_n_a_m_e]    [----nnnnllllrrrr] [_f_i_r_s_t] [_l_a_s_t]
  421.       ffffcccc ----ssss    [_p_a_t=_r_e_p] [_c_m_d]
  422.            Fix Command.  In    the first form,    a range    of commands
  423.            from _f_i_r_s_t to _l_a_s_t is selected from the history list.
  424.            _F_i_r_s_t and _l_a_s_t may be specified as a string (to locate
  425.            the last    command    beginning with that string) or as a
  426.            number (an index    into the history list, where a
  427.            negative    number is used as an offset from the current
  428.            command number).     If _l_a_s_t is not    specified it is    set to
  429.            the current command for listing (so that    ffffcccc ----llll ----11110000
  430.            prints the last 10 commands) and    to _f_i_r_s_t otherwise.
  431.            If _f_i_r_s_t    is not specified it is set to the previous
  432.            command for editing and -16 for listing.
  433.  
  434.            The ----nnnn option suppresses    the command numbers when
  435.            listing.     The ----rrrr    option reverses    the order of the
  436.            commands.  If the ----llll option is given, the commands are
  437.            listed on standard output.  Otherwise, the editor given
  438.            by _e_n_a_m_e    is invoked on a    file containing    those
  439.            commands.  If _e_n_a_m_e is not given, the value of the
  440.            FFFFCCCCEEEEDDDDIIIITTTT variable is used,    and the    value of EEEEDDDDIIIITTTTOOOORRRR    if
  441.            FFFFCCCCEEEEDDDDIIIITTTT is not set.  If neither variable is set, is
  442.            used.  When editing is complete,    the edited commands
  443.            are echoed and executed.
  444.  
  445.            In the second form, _c_o_m_m_a_n_d is re-executed after    each
  446.            instance    of _p_a_t is replaced by _r_e_p.  A useful alias to
  447.            use with    this is    ``r=fc -s'', so    that typing ``r    cc''
  448.            runs the    last command beginning with ``cc'' and typing
  449.            ``r'' re-executes the last command.
  450.  
  451.            If the first form is used, the return value is 0    unless
  452.            an invalid option is encountered    or _f_i_r_s_t or _l_a_s_t
  453.            specify history lines out of range.  If the ----eeee option
  454.            is supplied, the    return value is    the value of the last
  455.            command executed    or failure if an error occurs with the
  456.  
  457.  
  458.  
  459.      Page 7                         (printed 3/25/99)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  467.  
  468.  
  469.  
  470.            temporary file of commands.  If the second form is
  471.            used, the return    status is that of the command re-
  472.            executed, unless    _c_m_d does not specify a valid history
  473.            line, in    which case ffffcccc returns failure.
  474.  
  475.       ffffgggg [_j_o_b_s_p_e_c]
  476.            Resume _j_o_b_s_p_e_c in the foreground, and make it the
  477.            current job.  If    _j_o_b_s_p_e_c    is not present,    the shell's
  478.            notion of the _c_u_r_r_e_n_t _j_o_b is used.  The return value is
  479.            that of the command placed into the foreground, or
  480.            failure if run when job control is disabled or, when
  481.            run with    job control enabled, if    _j_o_b_s_p_e_c    does not
  482.            specify a valid job or _j_o_b_s_p_e_c specifies    a job that was
  483.            started without job control.
  484.  
  485.       ggggeeeettttooooppppttttssss _o_p_t_s_t_r_i_n_g _n_a_m_e [_a_r_g_s]
  486.            ggggeeeettttooooppppttttssss is used by shell    procedures to parse positional
  487.            parameters.  _o_p_t_s_t_r_i_n_g contains the option letters to
  488.            be recognized; if a letter is followed by a colon, the
  489.            option is expected to have an argument, which should be
  490.            separated from it by white space.  Each time it is
  491.            invoked,    ggggeeeettttooooppppttttssss    places the next    option in the shell
  492.            variable    _n_a_m_e, initializing _n_a_m_e    if it does not exist,
  493.            and the index of    the next argument to be    processed into
  494.            the variable OOOOPPPPTTTTIIIINNNNDDDD.  OOOOPPPPTTTTIIIINNNNDDDD is initialized to 1    each
  495.            time the    shell or a shell script    is invoked.  When an
  496.            option requires an argument, ggggeeeettttooooppppttttssss places that
  497.            argument    into the variable OOOOPPPPTTTTAAAARRRRGGGG.  The shell does not
  498.            reset OOOOPPPPTTTTIIIINNNNDDDD automatically; it must be manually reset
  499.            between multiple    calls to ggggeeeettttooooppppttttssss within    the same shell
  500.            invocation if a new set of parameters is    to be used.
  501.  
  502.            When the    end of options is encountered, ggggeeeettttooooppppttttssss exits
  503.            with a return value greater than    zero.  OOOOPPPPTTTTIIIINNNNDDDD is set
  504.            to the index of the first non-option argument, and nnnnaaaammmmeeee
  505.            is set to ?.
  506.  
  507.            ggggeeeettttooooppppttttssss normally    parses the positional parameters, but
  508.            if more arguments are given in _a_r_g_s, ggggeeeettttooooppppttttssss parses
  509.            those instead.
  510.  
  511.            ggggeeeettttooooppppttttssss can report errors in two    ways.  If the first
  512.            character of _o_p_t_s_t_r_i_n_g is a colon, _s_i_l_e_n_t error
  513.            reporting is used.  In normal operation diagnostic
  514.            messages    are printed when invalid options or missing
  515.            option arguments    are encountered.  If the variable
  516.            OOOOPPPPTTTTEEEERRRRRRRR is set to    0, no error messages will be
  517.            displayed, even if the first character of _o_p_t_s_t_r_i_n_g is
  518.            not a colon.
  519.  
  520.            If an invalid option is seen, ggggeeeettttooooppppttttssss places ? into
  521.            _n_a_m_e and, if not    silent,    prints an error    message    and
  522.  
  523.  
  524.  
  525.      Page 8                         (printed 3/25/99)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  533.  
  534.  
  535.  
  536.            unsets OOOOPPPPTTTTAAAARRRRGGGG.  If ggggeeeettttooooppppttttssss is silent, the option
  537.            character found is placed in OOOOPPPPTTTTAAAARRRRGGGG and no diagnostic
  538.            message is printed.
  539.  
  540.            If a required argument is not found, and    ggggeeeettttooooppppttttssss    is not
  541.            silent, a question mark (????) is placed in    _n_a_m_e, OOOOPPPPTTTTAAAARRRRGGGG
  542.            is unset, and a diagnostic message is printed.  If
  543.            ggggeeeettttooooppppttttssss is silent, then a colon (::::) is placed in    _n_a_m_e
  544.            and OOOOPPPPTTTTAAAARRRRGGGG is set to the    option character found.
  545.  
  546.            ggggeeeettttooooppppttttssss returns true if an option, specified or
  547.            unspecified, is found.  It returns false    if the end of
  548.            options is encountered or an error occurs.
  549.  
  550.       hhhhaaaasssshhhh [----rrrr] [----pppp    _f_i_l_e_n_a_m_e] [_n_a_m_e]
  551.            For each    _n_a_m_e, the full file name of the    command    is
  552.            determined by searching the directories in $$$$PPPPAAAATTTTHHHH    and
  553.            remembered.  If the ----pppp option is    supplied, no path
  554.            search is performed, and    _f_i_l_e_n_a_m_e is used as the    full
  555.            file name of the    command.  The ----rrrr option    causes the
  556.            shell to    forget all remembered locations.  If no
  557.            arguments are given, information    about remembered
  558.            commands    is printed.  The return    status is true unless
  559.            a _n_a_m_e is not found or an invalid option    is supplied.
  560.  
  561.       hhhheeeellllpppp [_p_a_t_t_e_r_n]
  562.            Display helpful information about builtin commands.  If
  563.            _p_a_t_t_e_r_n is specified, hhhheeeellllpppp gives    detailed help on all
  564.            commands    matching _p_a_t_t_e_r_n; otherwise help for all the
  565.            builtins    and shell control structures is    printed.  The
  566.            return status is    0 unless no command matches _p_a_t_t_e_r_n.
  567.  
  568.       hhhhiiiissssttttoooorrrryyyy [----cccc] [_n]
  569.       hhhhiiiissssttttoooorrrryyyy ----aaaannnnrrrrwwww    [_f_i_l_e_n_a_m_e]
  570.       hhhhiiiissssttttoooorrrryyyy ----pppp _a_r_g [_a_r_g ...]
  571.       hhhhiiiissssttttoooorrrryyyy ----ssss _a_r_g [_a_r_g ...]
  572.            With no options,    display    the command history list with
  573.            line numbers.  Lines listed with    a **** have been
  574.            modified.  An argument of _n lists only the last _n
  575.            lines.  If _f_i_l_e_n_a_m_e is supplied,    it is used as the name
  576.            of the history file; if not, the    value of HHHHIIIISSSSTTTTFFFFIIIILLLLEEEE is
  577.            used.  Options, if supplied, have the following
  578.            meanings:
  579.            ----aaaa   Append the ``new'' history lines (history lines
  580.             entered since the beginning    of the current bbbbaaaasssshhhh
  581.             session) to    the history file.
  582.            ----nnnn   Read the history lines not already read from the
  583.             history file into the current history list.     These
  584.             are    lines appended to the history file since the
  585.             beginning of the current bbbbaaaasssshhhh session.
  586.            ----rrrr   Read the contents of the history file and use them
  587.             as the current history.
  588.  
  589.  
  590.  
  591.      Page 9                         (printed 3/25/99)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  599.  
  600.  
  601.  
  602.            ----wwww   Write the current history to the history file,
  603.             overwriting    the history file's contents.
  604.            ----cccc   Clear the history list by deleting all the
  605.             entries.
  606.            ----pppp   Perform history substitution on the    following _a_r_g_s
  607.             and    display    the result on the standard output.
  608.             Does not store the results in the history list.
  609.             Each _a_r_g must be quoted to disable normal history
  610.             expansion.
  611.            ----ssss   Store the _a_r_g_s in the history list as a single
  612.             entry.  The    last command in    the history list is
  613.             removed before the _a_r_g_s are    added.
  614.  
  615.            The return value    is 0 unless an invalid option is
  616.            encountered or an error occurs while reading or writing
  617.            the history file.
  618.  
  619.       jjjjoooobbbbssss [----llllnnnnpppprrrrssss]    [ _j_o_b_s_p_e_c ... ]
  620.       jjjjoooobbbbssss ----xxxx _c_o_m_m_a_n_d [ _a_r_g_s ... ]
  621.            The first form lists the    active jobs.  The options have
  622.            the following meanings:
  623.            ----llll   List process IDs in    addition to the    normal
  624.             information.
  625.            ----pppp   List only the process ID of    the job's process
  626.             group leader.
  627.            ----nnnn   Display information    only about jobs    that have
  628.             changed status since the user was last notified of
  629.             their status.
  630.            ----rrrr   Restrict output to running jobs.
  631.            ----ssss   Restrict output to stopped jobs.
  632.  
  633.            If _j_o_b_s_p_e_c is given, output is restricted to
  634.            information about that job.  The    return status is 0
  635.            unless an invalid option    is encountered or an invalid
  636.            _j_o_b_s_p_e_c is supplied.
  637.  
  638.            If the ----xxxx option    is supplied, jjjjoooobbbbssss replaces any _j_o_b_s_p_e_c
  639.            found in    _c_o_m_m_a_n_d    or _a_r_g_s    with the corresponding process
  640.            group ID, and executes _c_o_m_m_a_n_d passing it _a_r_g_s,
  641.            returning its exit status.
  642.  
  643.       kkkkiiiillllllll [----ssss _s_i_g_s_p_e_c | ----nnnn    _s_i_g_n_u_m | ----_s_i_g_s_p_e_c] [_p_i_d    | _j_o_b_s_p_e_c] ...
  644.       kkkkiiiillllllll ----llll [_s_i_g_s_p_e_c | _e_x_i_t__s_t_a_t_u_s]
  645.            Send the    signal named by    _s_i_g_s_p_e_c    or _s_i_g_n_u_m to the
  646.            processes named by _p_i_d or _j_o_b_s_p_e_c.  _s_i_g_s_p_e_c is either a
  647.            signal name such    as SSSSIIIIGGGGKKKKIIIILLLLLLLL or a    signal number; _s_i_g_n_u_m
  648.            is a signal number.  If _s_i_g_s_p_e_c is a signal name, the
  649.            name may    be given with or without the SSSSIIIIGGGG prefix.  If
  650.            _s_i_g_s_p_e_c is not present, then SSSSIIIIGGGGTTTTEEEERRRRMMMM is assumed.     An
  651.            argument    of ----llll lists the    signal names.  If any
  652.            arguments are supplied when ----llll is given,    the names of
  653.            the signals corresponding to the    arguments are listed,
  654.  
  655.  
  656.  
  657.      Page 10                         (printed 3/25/99)
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  665.  
  666.  
  667.  
  668.            and the return status is    0.  The    _e_x_i_t__s_t_a_t_u_s argument
  669.            to ----llll is    a number specifying either a signal number or
  670.            the exit    status of a process terminated by a signal.
  671.            kkkkiiiillllllll returns true if at least one signal    was
  672.            successfully sent, or false if an error occurs or an
  673.            invalid option is encountered.
  674.  
  675.       lllleeeetttt _a_r_g [_a_r_g ...]
  676.            Each _a_r_g    is an arithmetic expression to be evaluated
  677.            (see AAAARRRRIIIITTTTHHHHMMMMEEEETTTTIIIICCCC EEEEVVVVAAAALLLLUUUUAAAATTTTIIIIOOOONNNN).  If    the last _a_r_g evaluates
  678.            to 0, lllleeeetttt returns 1; 0 is returned otherwise.
  679.  
  680.       llllooooccccaaaallll    [_n_a_m_e[=_v_a_l_u_e] ...]
  681.            For each    argument, a local variable named _n_a_m_e is
  682.            created,    and assigned _v_a_l_u_e.  When llllooooccccaaaallll    is used    within
  683.            a function, it causes the variable _n_a_m_e to have a
  684.            visible scope restricted    to that    function and its
  685.            children.  With no operands, llllooooccccaaaallll writes a list    of
  686.            local variables to the standard output.    It is an error
  687.            to use llllooooccccaaaallll when not within a function.     The return
  688.            status is 0 unless llllooooccccaaaallll    is used    outside    a function, or
  689.            an invalid _n_a_m_e is supplied.
  690.  
  691.       llllooooggggoooouuuutttt
  692.            Exit a login shell.
  693.  
  694.       ppppooooppppdddd [-nnnn] [+_n] [-_n]
  695.            Removes entries from the    directory stack.  With no
  696.            arguments, removes the top directory from the stack,
  697.            and performs a ccccdddd to the    new top    directory.  Arguments,
  698.            if supplied, have the following meanings:
  699.            ++++_n   Removes the    _nth entry counting from    the left of
  700.             the    list shown by ddddiiiirrrrssss, starting with zero.     For
  701.             example: ``popd +0'' removes the first directory,
  702.             ``popd +1''    the second.
  703.            ----_n   Removes the    _nth entry counting from    the right of
  704.             the    list shown by ddddiiiirrrrssss, starting with zero.     For
  705.             example: ``popd -0'' removes the last directory,
  706.             ``popd -1''    the next to last.
  707.            ----nnnn   Suppresses the normal change of directory when
  708.             removing directories from the stack, so that only
  709.             the    stack is manipulated.
  710.  
  711.            If the ppppooooppppdddd command is successful, a ddddiiiirrrrssss is performed
  712.            as well,    and the    return status is 0.  ppppooooppppdddd returns
  713.            false if    an invalid option is encountered, the
  714.            directory stack is empty, a non-existent    directory
  715.            stack entry is specified, or the    directory change
  716.            fails.
  717.  
  718.       pppprrrriiiinnnnttttffff _f_o_r_m_a_t    [_a_r_g_u_m_e_n_t_s]
  719.            Write the formatted _a_r_g_u_m_e_n_t_s to    the standard output
  720.  
  721.  
  722.  
  723.      Page 11                         (printed 3/25/99)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  731.  
  732.  
  733.  
  734.            under the control of the    _f_o_r_m_a_t.     The _f_o_r_m_a_t is a
  735.            character string    which contains three types of objects:
  736.            plain characters, which are simply copied to standard
  737.            output, character escape    sequences, which are converted
  738.            and copied to the standard output, and format
  739.            specifications, each of which causes printing of    the
  740.            next successive _a_r_g_u_m_e_n_t.  In addition to the standard
  741.            _p_r_i_n_t_f(1) formats, %b causes pppprrrriiiinnnnttttffff to expand backslash
  742.            escape sequences    in the corresponding _a_r_g_u_m_e_n_t, and %q
  743.            causes pppprrrriiiinnnnttttffff to    output the corresponding _a_r_g_u_m_e_n_t in a
  744.            format that can be reused as shell input.
  745.  
  746.            The _f_o_r_m_a_t is reused as necessary to consume all    of the
  747.            _a_r_g_u_m_e_n_t_s.  If the _f_o_r_m_a_t requires more _a_r_g_u_m_e_n_t_s than
  748.            are supplied, the extra format specifications behave as
  749.            if a zero value or null string, as appropriate, had
  750.            been supplied.
  751.  
  752.       ppppuuuusssshhhhdddd    [----nnnn] [_d_i_r]
  753.       ppppuuuusssshhhhdddd    [----nnnn] [+_n] [-_n]
  754.            Adds a directory    to the top of the directory stack, or
  755.            rotates the stack, making the new top of    the stack the
  756.            current working directory.  With    no arguments,
  757.            exchanges the top two directories and returns 0,    unless
  758.            the directory stack is empty.  Arguments, if supplied,
  759.            have the    following meanings:
  760.            ++++_n   Rotates the    stack so that the _nth directory
  761.             (counting from the left of the list    shown by ddddiiiirrrrssss,
  762.             starting with zero)    is at the top.
  763.            ----_n   Rotates the    stack so that the _nth directory
  764.             (counting from the right of    the list shown by
  765.             ddddiiiirrrrssss, starting with    zero) is at the    top.
  766.            ----nnnn   Suppresses the normal change of directory when
  767.             adding directories to the stack, so    that only the
  768.             stack is manipulated.
  769.            ddddiiiirrrr  Adds _d_i_r to    the directory stack at the top,    making
  770.             it the new current working directory.
  771.  
  772.            If the ppppuuuusssshhhhdddd command is successful, a ddddiiiirrrrssss is performed
  773.            as well.     If the    first form is used, ppppuuuusssshhhhdddd returns 0
  774.            unless the cd to    _d_i_r fails.  With the second form,
  775.            ppppuuuusssshhhhdddd returns 0 unless the directory stack is empty, a
  776.            non-existent directory stack element is specified, or
  777.            the directory change to the specified new current
  778.            directory fails.
  779.  
  780.       ppppwwwwdddd [----LLLLPPPP]
  781.            Print the absolute file name of the current working
  782.            directory.  The file name printed contains no symbolic
  783.            links if    the ----PPPP option is supplied or the ----oooo pppphhhhyyyyssssiiiiccccaaaallll
  784.            option to the sssseeeetttt builtin command is enabled.  If the
  785.            ----LLLL option is used, symbolic links are followed.    The
  786.  
  787.  
  788.  
  789.      Page 12                         (printed 3/25/99)
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  797.  
  798.  
  799.  
  800.            return status is    0 unless an error occurs while reading
  801.            the name    of the current directory or an invalid option
  802.            is supplied.
  803.  
  804.       rrrreeeeaaaadddd [----eeeerrrr] [----aaaa _a_n_a_m_e]    [----pppp _p_r_o_m_p_t] [_n_a_m_e ...]
  805.            One line    is read    from the standard input, and the first
  806.            word is assigned    to the first _n_a_m_e, the second word to
  807.            the second _n_a_m_e,    and so on, with    leftover words and
  808.            their intervening separators assigned to    the last _n_a_m_e.
  809.            If there    are fewer words    read from the standard input
  810.            than names, the remaining names are assigned empty
  811.            values.    The characters in IIIIFFFFSSSS are used to split    the
  812.            line into words.     The backslash character (\\\\) may be
  813.            used to remove any special meaning for the next
  814.            character read and for line continuation.  Options, if
  815.            supplied, have the following meanings:
  816.            ----rrrr   Backslash does not act as an escape    character.
  817.             The    backslash is considered    to be part of the
  818.             line.  In particular, a backslash-newline pair may
  819.             not    be used    as a line continuation.
  820.            ----pppp   Display _p_r_o_m_p_t, without a trailing newline,    before
  821.             attempting to read any input.  The prompt is
  822.             displayed only if input is coming from a terminal.
  823.            ----aaaa   The    words are assigned to sequential indices of
  824.             the    array variable _a_n_a_m_e, starting at 0.  _a_n_a_m_e is
  825.             unset before any new values    are assigned.  Other
  826.             _n_a_m_e arguments are ignored.
  827.            ----eeee   If the standard input is coming from a terminal,
  828.             rrrreeeeaaaaddddlllliiiinnnneeee (see RRRREEEEAAAADDDDLLLLIIIINNNNEEEE above) is used to obtain
  829.             the    line.
  830.  
  831.            If no _n_a_m_e_s are supplied, the line read is assigned to
  832.            the variable RRRREEEEPPPPLLLLYYYY.  The    return code is zero, unless
  833.            end-of-file is encountered.
  834.  
  835.       rrrreeeeaaaaddddoooonnnnllllyyyy [----aaaappppffff] [_n_a_m_e    ...]
  836.            The given _n_a_m_e_s are marked readonly; the    values of
  837.            these _n_a_m_e_s may not be changed by subsequent
  838.            assignment.  If the ----ffff option is    supplied, the
  839.            functions corresponding to the _n_a_m_e_s are    so marked.
  840.            The ----aaaa option restricts the variables to    arrays.     If no
  841.            _n_a_m_e arguments are given, or if the ----pppp option is
  842.            supplied, a list    of all readonly    names is printed.  The
  843.            ----pppp option causes    output to be displayed in a format
  844.            thatmay be reused as input.  The    return status is 0
  845.            unless an invalid option    is encountered,    one of the
  846.            _n_a_m_e_s is    not a valid shell variable name, or ----ffff is
  847.            supplied    with a _n_a_m_e that is not    a function.
  848.  
  849.       rrrreeeettttuuuurrrrnnnn [_n]
  850.            Causes a    function to exit with the return value
  851.            specified by _n.    If _n is    omitted, the return status is
  852.  
  853.  
  854.  
  855.      Page 13                         (printed 3/25/99)
  856.  
  857.  
  858.  
  859.  
  860.  
  861.  
  862.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  863.  
  864.  
  865.  
  866.            that of the last    command    executed in the    function body.
  867.            If used outside a function, but during execution    of a
  868.            script by the .... (ssssoooouuuurrrrcccceeee)    command, it causes the shell
  869.            to stop executing that script and return    either _n or
  870.            the exit    status of the last command executed within the
  871.            script as the exit status of the    script.     If used
  872.            outside a function and not during execution of a    script
  873.            by ...., the return    status is false.
  874.  
  875.       sssseeeetttt [--------aaaabbbbeeeeffffhhhhkkkkmmmmnnnnppppttttuuuuvvvvxxxxBBBBCCCCHHHHPPPP] [----oooo    _o_p_t_i_o_n]    [_a_r_g ...]
  876.            Without options,    the name and value of each shell
  877.            variable    are displayed in a format that can be reused
  878.            as input.  The output is    sorted according to the
  879.            current locale.    When options are specified, they set
  880.            or unset    shell attributes.  Any arguments remaining
  881.            after the options are processed are treated as values
  882.            for the positional parameters and are assigned, in
  883.            order, to $$$$1111, $$$$2222, ............ $$$$_n.  Options, if specified, have
  884.            the following meanings:
  885.            ----aaaa      Automatically mark variables which are modified
  886.                or created for export to    the environment    of
  887.                subsequent commands.
  888.            ----bbbb      Report the status of terminated background jobs
  889.                immediately, rather than    before the next
  890.                primary prompt.    This is    effective only when
  891.                job control is enabled.
  892.            ----eeee      Exit immediately    if a _s_i_m_p_l_e _c_o_m_m_a_n_d (see SSSSHHHHEEEELLLLLLLL
  893.                GGGGRRRRAAAAMMMMMMMMAAAARRRR above) exits with a non-zero status.
  894.                The shell does not exit if the command that
  895.                fails is    part of    an _u_n_t_i_l or _w_h_i_l_e loop,    part
  896.                of an _i_f    statement, part    of a &&&&&&&&    or |||||||| list, or
  897.                if the command's    return value is    being inverted
  898.                via !!!!.
  899.            ----ffff      Disable pathname    expansion.
  900.            ----hhhh      Remember    the location of    commands as they are
  901.                looked up for execution.     This is enabled by
  902.                default.
  903.            ----kkkk      All arguments in    the form of assignment
  904.                statements are placed in    the environment    for a
  905.                command,    not just those that precede the
  906.                command name.
  907.            ----mmmm      Monitor mode.  Job control is enabled.  This
  908.                option is on by default for interactive shells
  909.                on systems that support it (see JJJJOOOOBBBB CCCCOOOONNNNTTTTRRRROOOOLLLL
  910.                above).    Background processes run in a separate
  911.                process group and a line    containing their exit
  912.                status is printed upon their completion.
  913.            ----nnnn      Read commands but do not    execute    them.  This
  914.                may be used to check a shell script for syntax
  915.                errors.    This is    ignored    by interactive shells.
  916.            ----oooo _o_p_t_i_o_n-_n_a_m_e
  917.                The _o_p_t_i_o_n-_n_a_m_e can be one of the following:
  918.  
  919.  
  920.  
  921.      Page 14                         (printed 3/25/99)
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  929.  
  930.  
  931.  
  932.                aaaalllllllleeeexxxxppppoooorrrrtttt
  933.                    Same as ----aaaa.
  934.                bbbbrrrraaaacccceeeeeeeexxxxppppaaaannnndddd
  935.                    Same as ----BBBB.
  936.                eeeemmmmaaaaccccssss   Use an emacs-style command line editing
  937.                    interface.  This    is enabled by default
  938.                    when the    shell is interactive, unless
  939.                    the shell is started with the
  940.                    --------nnnnooooeeeeddddiiiittttiiiinnnngggg option.
  941.                eeeerrrrrrrreeeexxxxiiiitttt Same as ----eeee.
  942.                hhhhaaaasssshhhhaaaallllllll Same as ----hhhh.
  943.                hhhhiiiisssstttteeeexxxxppppaaaannnndddd
  944.                    Same as ----HHHH.
  945.                hhhhiiiissssttttoooorrrryyyy Enable command history, as described
  946.                    above under HHHHIIIISSSSTTTTOOOORRRRYYYY.  This option is on
  947.                    by default in interactive shells.
  948.                iiiiggggnnnnoooorrrreeeeeeeeooooffff
  949.                    The effect is as    if the shell command
  950.                    IGNOREEOF=10 had    been executed (see
  951.                    SSSShhhheeeellllllll VVVVaaaarrrriiiiaaaabbbblllleeeessss above).
  952.                kkkkeeeeyyyywwwwoooorrrrdddd Same as ----kkkk.
  953.                mmmmoooonnnniiiittttoooorrrr Same as ----mmmm.
  954.                nnnnoooocccclllloooobbbbbbbbeeeerrrr
  955.                    Same as ----CCCC.
  956.                nnnnooooeeeexxxxeeeecccc  Same as ----nnnn.
  957.                nnnnoooogggglllloooobbbb  Same as ----ffff.
  958.                nnnnoooottttiiiiffffyyyy  Same as ----bbbb.
  959.                nnnnoooouuuunnnnsssseeeetttt Same as ----uuuu.
  960.                oooonnnneeeeccccmmmmdddd  Same as ----tttt.
  961.                pppphhhhyyyyssssiiiiccccaaaallll
  962.                    Same as ----PPPP.
  963.                ppppoooossssiiiixxxx   Change the behavior of bbbbaaaasssshhhh where the
  964.                    default operation differs from the
  965.                    POSIX 1003.2 standard to    match the
  966.                    standard.
  967.                pppprrrriiiivvvviiiilllleeeeggggeeeedddd
  968.                    Same as ----pppp.
  969.                vvvveeeerrrrbbbboooosssseeee Same as ----vvvv.
  970.                vvvviiii      Use a vi-style command line editing
  971.                    interface.
  972.                xxxxttttrrrraaaacccceeee  Same as ----xxxx.
  973.  
  974.                If ----oooo is    supplied with no _o_p_t_i_o_n-_n_a_m_e, the
  975.                values of the current options are printed.  If
  976.                ++++oooo is supplied with no _o_p_t_i_o_n-_n_a_m_e, a series of
  977.                sssseeeetttt commands to recreate    the current option
  978.                settings    is displayed on    the standard output.
  979.            ----pppp      Turn on _p_r_i_v_i_l_e_g_e_d mode.     In this mode, the
  980.                $$$$EEEENNNNVVVV and    $$$$BBBBAAAASSSSHHHH____EEEENNNNVVVV files    are not    processed,
  981.                shell functions are not inherited from the
  982.                environment, and    the SSSSHHHHEEEELLLLLLLLOOOOPPPPTTTTSSSS variable,    if it
  983.                appears in the environment, is ignored.    If the
  984.                shell is    started    with the effective user
  985.  
  986.  
  987.      Page 15                         (printed 3/25/99)
  988.  
  989.  
  990.  
  991.  
  992.  
  993.  
  994.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  995.  
  996.  
  997.  
  998.                (group) id not equal to the real    user (group)
  999.                id, and the ----pppp option is    not supplied, these
  1000.                actions are taken and the effective user    id is
  1001.                set to the real user id.     If the    ----pppp option is
  1002.                supplied    at startup, the    effective user id is
  1003.                not reset.  Turning this    option off causes the
  1004.                effective user and group    ids to be set to the
  1005.                real user and group ids.
  1006.            ----tttt      Exit after reading and executing    one command.
  1007.            ----uuuu      Treat unset variables as    an error when
  1008.                performing parameter expansion.    If expansion
  1009.                is attempted on an unset    variable, the shell
  1010.                prints an error message,    and, if    not
  1011.                interactive, exits with a non-zero status.
  1012.            ----vvvv      Print shell input lines as they are read.
  1013.            ----xxxx      After expanding each _s_i_m_p_l_e _c_o_m_m_a_n_d, display
  1014.                the expanded value of PPPPSSSS4444, followed by the
  1015.                command and its expanded    arguments.
  1016.            ----BBBB      The shell performs brace    expansion (see BBBBrrrraaaacccceeee
  1017.                EEEExxxxppppaaaannnnssssiiiioooonnnn above).  This is on by    default.
  1018.            ----CCCC      If set, bbbbaaaasssshhhh does not overwrite an existing
  1019.                file with the >>>>,    >>>>&&&&, and    <<<<>>>> redirection
  1020.                operators.  This    may be overridden when
  1021.                creating    output files by    using the redirection
  1022.                operator    >>>>|||| instead of >>>>.
  1023.            ----HHHH      Enable !!!!    style history substitution.  This
  1024.                option is on by default when the    shell is
  1025.                interactive.
  1026.            ----PPPP      If set, the shell does not follow symbolic
  1027.                links when executing commands such as ccccdddd    that
  1028.                change the current working directory.  It uses
  1029.                the physical directory structure    instead.  By
  1030.                default,    bbbbaaaasssshhhh follows the logical chain of
  1031.                directories when    performing commands which
  1032.                change the current directory.
  1033.            --------      If no arguments follow this option, then    the
  1034.                positional parameters are unset.     Otherwise,
  1035.                the positional parameters are set to the    _a_r_gs,
  1036.                even if some of them begin with a ----.
  1037.            ----       Signal the end of options, cause    all remaining
  1038.                _a_r_gs to be assigned to the positional
  1039.                parameters.  The    ----xxxx and ----vvvv options are turned
  1040.                off.  If    there are no _a_r_gs, the positional
  1041.                parameters remain unchanged.
  1042.  
  1043.            The options are off by default unless otherwise noted.
  1044.            Using + rather than - causes these options to be    turned
  1045.            off.  The options can also be specified as arguments to
  1046.            an invocation of    the shell.  The    current    set of options
  1047.            may be found in $$$$----.  The    return status is always    true
  1048.            unless an invalid option    is encountered.
  1049.  
  1050.  
  1051.  
  1052.  
  1053.      Page 16                         (printed 3/25/99)
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  1061.  
  1062.  
  1063.  
  1064.       sssshhhhiiiifffftttt    [_n]
  1065.            The positional parameters from _n+1 ... are renamed to
  1066.            $$$$1111 ................ Parameters represented by the numbers $$$$####    down
  1067.            to $$$$####-_n+1 are unset.  _n must be a non-negative number
  1068.            less than or equal to $$$$####.  If _n is 0, no    parameters are
  1069.            changed.     If _n is not given, it is assumed to be    1.  If
  1070.            _n is greater than $$$$####, the positional parameters are not
  1071.            changed.     The return status is greater than zero    if _n
  1072.            is greater than $$$$#### or less than zero; otherwise 0.
  1073.  
  1074.       sssshhhhoooopppptttt    [----ppppqqqqssssuuuu]    [----oooo] [_o_p_t_n_a_m_e ...]
  1075.            Toggle the values of variables controlling optional
  1076.            shell behavior.    With no    options, or with the ----pppp
  1077.            option, a list of all settable options is displayed,
  1078.            with an indication of whether or    not each is set.  The
  1079.            ----pppp option causes    output to be displayed in a form that
  1080.            may be reused as    input.    Other options have the
  1081.            following meanings:
  1082.            ----ssss   Enable (set) each _o_p_t_n_a_m_e.
  1083.            ----uuuu   Disable (unset) each _o_p_t_n_a_m_e.
  1084.            ----qqqq   Suppresses normal output (quiet mode); the return
  1085.             status indicates whether the _o_p_t_n_a_m_e is set    or
  1086.             unset.  If multiple    _o_p_t_n_a_m_e    arguments are given
  1087.             with ----qqqq, the return    status is zero if all _o_p_t_n_a_m_e_s
  1088.             are    enabled; non-zero otherwise.
  1089.            ----oooo   Restricts the values of _o_p_t_n_a_m_e to be those
  1090.             defined for    the ----oooo option to the sssseeeetttt builtin.
  1091.  
  1092.            If either ----ssss or ----uuuu is used with no _o_p_t_n_a_m_e arguments,
  1093.            the display is limited to those options which are set
  1094.            or unset, respectively.    Unless otherwise noted,    the
  1095.            sssshhhhoooopppptttt options are disabled (unset) by default.
  1096.  
  1097.            The return status when listing options is zero if all
  1098.            _o_p_t_n_a_m_e_s    are enabled, non-zero otherwise.  When setting
  1099.            or unsetting options, the return    status is zero unless
  1100.            an _o_p_t_n_a_m_e is not a valid shell option.
  1101.  
  1102.            The list    of sssshhhhoooopppptttt options is:
  1103.  
  1104.            ccccddddaaaabbbblllleeee____vvvvaaaarrrrssss
  1105.                If set, an argument to the ccccdddd builtin command
  1106.                that is not a directory is assumed to be    the
  1107.                name of a variable whose    value is the directory
  1108.                to change to.
  1109.            ccccddddssssppppeeeellllllll If set, minor errors in the spelling of a
  1110.                directory component in a    ccccdddd command will    be
  1111.                corrected.  The errors checked for are
  1112.                transposed characters, a    missing    character, and
  1113.                one character too many.    If a correction    is
  1114.                found, the corrected file name is printed, and
  1115.                the command proceeds.  This option is only used
  1116.  
  1117.  
  1118.  
  1119.      Page 17                         (printed 3/25/99)
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  1127.  
  1128.  
  1129.  
  1130.                by interactive shells.
  1131.            cccchhhheeeecccckkkkhhhhaaaasssshhhh
  1132.                If set, bbbbaaaasssshhhh checks that    a command found    in the
  1133.                hash table exists before    trying to execute it.
  1134.                If a hashed command no longer exists, a normal
  1135.                path search is performed.
  1136.            cccchhhheeeecccckkkkwwwwiiiinnnnssssiiiizzzzeeee
  1137.                If set, bbbbaaaasssshhhh checks the window size after each
  1138.                command and, if necessary, updates the values
  1139.                of LLLLIIIINNNNEEEESSSS    and CCCCOOOOLLLLUUUUMMMMNNNNSSSS.
  1140.            ccccmmmmddddhhhhiiiisssstttt If set, bbbbaaaasssshhhh attempts to    save all lines of a
  1141.                multiple-line command in    the same history
  1142.                entry.  This allows easy    re-editing of multi-
  1143.                line commands.
  1144.            ddddoooottttgggglllloooobbbb If set, bbbbaaaasssshhhh includes filenames beginning with
  1145.                a `.' in    the results of pathname    expansion.
  1146.            eeeexxxxeeeeccccffffaaaaiiiillll
  1147.                If set, a non-interactive shell will not    exit
  1148.                if it cannot execute the    file specified as an
  1149.                argument    to the eeeexxxxeeeecccc builtin command.  An
  1150.                interactive shell does not exit if eeeexxxxeeeecccc fails.
  1151.            eeeexxxxppppaaaannnndddd____aaaalllliiiiaaaasssseeeessss
  1152.                If set, aliases are expanded as described above
  1153.                under AAAALLLLIIIIAAAASSSSEEEESSSS.  This option is enabled by
  1154.                default for interactive shells.
  1155.            eeeexxxxttttgggglllloooobbbb If set, the extended pattern matching features
  1156.                described above under PPPPaaaatttthhhhnnnnaaaammmmeeee EEEExxxxppppaaaannnnssssiiiioooonnnn    are
  1157.                enabled.
  1158.            hhhhiiiissssttttaaaappppppppeeeennnndddd
  1159.                If set, the history list    is appended to the
  1160.                file named by the value of the HHHHIIIISSSSTTTTFFFFIIIILLLLEEEE
  1161.                variable    when the shell exits, rather than
  1162.                overwriting the file.
  1163.            hhhhiiiissssttttrrrreeeeeeeeddddiiiitttt
  1164.                If set, and rrrreeeeaaaaddddlllliiiinnnneeee is being used, a user is
  1165.                given the opportunity to    re-edit    a failed
  1166.                history substitution.
  1167.            hhhhiiiissssttttvvvveeeerrrriiiiffffyyyy
  1168.                If set, and rrrreeeeaaaaddddlllliiiinnnneeee is being used, the results
  1169.                of history substitution are not immediately
  1170.                passed to the shell parser.  Instead, the
  1171.                resulting line is loaded    into the rrrreeeeaaaaddddlllliiiinnnneeee
  1172.                editing buffer, allowing    further    modification.
  1173.            hhhhoooossssttttccccoooommmmpppplllleeeetttteeee
  1174.                If set, and rrrreeeeaaaaddddlllliiiinnnneeee is being used, bbbbaaaasssshhhh    will
  1175.                attempt to perform hostname completion when a
  1176.                word containing a @@@@ is being completed (see
  1177.                CCCCoooommmmpppplllleeeettttiiiinnnngggg under    RRRREEEEAAAADDDDLLLLIIIINNNNEEEE above).  This is
  1178.                enabled by default.
  1179.            hhhhuuuuppppoooonnnneeeexxxxiiiitttt
  1180.                If set, bbbbaaaasssshhhh will send SSSSIIIIGGGGHHHHUUUUPPPP to    all jobs when
  1181.                an interactive login shell exits.
  1182.  
  1183.  
  1184.  
  1185.      Page 18                         (printed 3/25/99)
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  1193.  
  1194.  
  1195.  
  1196.            iiiinnnntttteeeerrrraaaaccccttttiiiivvvveeee____ccccoooommmmmmmmeeeennnnttttssss
  1197.                If set, allow a word beginning with #### to    cause
  1198.                that word and all remaining characters on that
  1199.                line to be ignored in an    interactive shell (see
  1200.                CCCCOOOOMMMMMMMMEEEENNNNTTTTSSSS    above).     This option is    enabled    by
  1201.                default.
  1202.            lllliiiitttthhhhiiiisssstttt If set, and the ccccmmmmddddhhhhiiiisssstttt option is enabled,
  1203.                multi-line commands are saved to    the history
  1204.                with embedded newlines rather than using
  1205.                semicolon separators where possible.
  1206.            mmmmaaaaiiiillllwwwwaaaarrrrnnnn
  1207.                If set, and a file that bbbbaaaasssshhhh is checking    for
  1208.                mail has    been accessed since the    last time it
  1209.                was checked, the    message    ``The mail in _m_a_i_l_f_i_l_e
  1210.                has been    read'' is displayed.
  1211.            nnnnooooccccaaaasssseeeegggglllloooobbbb
  1212.                If set, bbbbaaaasssshhhh matches filenames in a
  1213.                case-insensitive    fashion    when performing
  1214.                pathname    expansion (see PPPPaaaatttthhhhnnnnaaaammmmeeee    EEEExxxxppppaaaannnnssssiiiioooonnnn
  1215.                above).
  1216.            nnnnuuuullllllllgggglllloooobbbb
  1217.                If set, bbbbaaaasssshhhh allows patterns which match    no
  1218.                files (see PPPPaaaatttthhhhnnnnaaaammmmeeee EEEExxxxppppaaaannnnssssiiiioooonnnn above) to expand
  1219.                to a null string, rather    than themselves.
  1220.            pppprrrroooommmmppppttttvvvvaaaarrrrssss
  1221.                If set, prompt strings undergo variable and
  1222.                parameter expansion after being expanded    as
  1223.                described in PPPPRRRROOOOMMMMPPPPTTTTIIIINNNNGGGG above.  This option is
  1224.                enabled by default.
  1225.            rrrreeeessssttttrrrriiiicccctttteeeedddd____sssshhhheeeellllllll
  1226.                The shell sets this option if it    is started in
  1227.                restricted mode (see RRRREEEESSSSTTTTRRRRIIIICCCCTTTTEEEEDDDD SSSSHHHHEEEELLLLLLLL below).
  1228.                The value may not be changed.  This is not
  1229.                reset when the startup files are    executed,
  1230.                allowing    the startup files to discover whether
  1231.                or not a    shell is restricted.
  1232.            sssshhhhiiiifffftttt____vvvveeeerrrrbbbboooosssseeee
  1233.                If set, the sssshhhhiiiifffftttt builtin prints    an error
  1234.                message when the    shift count exceeds the    number
  1235.                of positional parameters.
  1236.            ssssoooouuuurrrrcccceeeeppppaaaatttthhhh
  1237.                If set, the ssssoooouuuurrrrcccceeee (....) builtin uses the value
  1238.                of PPPPAAAATTTTHHHH to find the directory containing    the
  1239.                file supplied as    an argument.  This option is
  1240.                enabled by default.
  1241.       ssssuuuussssppppeeeennnndddd [----ffff]
  1242.            Suspend the execution of    this shell until it receives a
  1243.            SSSSIIIIGGGGCCCCOOOONNNNTTTT signal.    The ----ffff option says not to complain if
  1244.            this is a login shell; just suspend anyway.  The    return
  1245.            status is 0 unless the shell is a login shell and ----ffff is
  1246.            not supplied, or    if job control is not enabled.
  1247.       tttteeeesssstttt _e_x_p_r
  1248.  
  1249.  
  1250.  
  1251.      Page 19                         (printed 3/25/99)
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  1259.  
  1260.  
  1261.  
  1262.       [[[[ _e_x_p_r ]]]]
  1263.            Return a    status of 0 or 1 depending on the evaluation
  1264.            of the conditional expression _e_x_p_r.  Each operator and
  1265.            operand must be a separate argument.  Expressions are
  1266.            composed    of the primaries described above under
  1267.            CCCCOOOONNNNDDDDIIIITTTTIIIIOOOONNNNAAAALLLL EEEEXXXXPPPPRRRREEEESSSSSSSSIIIIOOOONNNNSSSS.
  1268.  
  1269.            Expressions may be combined using the following
  1270.            operators, listed in decreasing order of    precedence.
  1271.            !!!! _e_x_p_r
  1272.             True if _e_x_p_r is false.
  1273.            (((( _e_x_p_r ))))
  1274.             Returns the    value of _e_x_p_r.    This may be used to
  1275.             override the normal    precedence of operators.
  1276.            _e_x_p_r_1 -aaaa    _e_x_p_r_2
  1277.             True if both _e_x_p_r_1 and _e_x_p_r_2 are true.
  1278.            _e_x_p_r_1 -oooo    _e_x_p_r_2
  1279.             True if either _e_x_p_r_1 or _e_x_p_r_2 is true.
  1280.  
  1281.            tttteeeesssstttt and    [[[[ evaluate conditional expressions using a set
  1282.            of rules    based on the number of arguments.
  1283.  
  1284.            0 arguments
  1285.             The    expression is false.
  1286.            1 argument
  1287.             The    expression is true if and only if the argument
  1288.             is not null.
  1289.            2 arguments
  1290.             If the first argument is !!!!,    the expression is true
  1291.             if and only    if the second argument is null.     If
  1292.             the    first argument is one of the unary conditional
  1293.             operators listed above under CCCCOOOONNNNDDDDIIIITTTTIIIIOOOONNNNAAAALLLL
  1294.             EEEEXXXXPPPPRRRREEEESSSSSSSSIIIIOOOONNNNSSSS, the expression    is true    if the unary
  1295.             test is true.  If the first    argument is not    a
  1296.             valid unary    conditional operator, the expression
  1297.             is false.
  1298.            3 arguments
  1299.             If the second argument is one of the binary
  1300.             conditional    operators listed above under
  1301.             CCCCOOOONNNNDDDDIIIITTTTIIIIOOOONNNNAAAALLLL    EEEEXXXXPPPPRRRREEEESSSSSSSSIIIIOOOONNNNSSSS, the result    of the
  1302.             expression is the result of    the binary test    using
  1303.             the    first and third    arguments as operands.    If the
  1304.             first argument is !!!!, the value is the negation of
  1305.             the    two-argument test using    the second and third
  1306.             arguments.    If the first argument is exactly (((( and
  1307.             the    third argument is exactly )))), the result    is the
  1308.             one-argument test of the second argument.
  1309.             Otherwise, the expression is false.     The ----aaaa    and ----oooo
  1310.             operators are considered binary operators in this
  1311.             case.
  1312.            4 arguments
  1313.             If the first argument is !!!!,    the result is the
  1314.  
  1315.  
  1316.  
  1317.      Page 20                         (printed 3/25/99)
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.  
  1324.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  1325.  
  1326.  
  1327.  
  1328.             negation of    the three-argument expression composed
  1329.             of the remaining arguments.     Otherwise, the
  1330.             expression is parsed and evaluated according to
  1331.             precedence using the rules listed above.
  1332.            5 or more arguments
  1333.             The    expression is parsed and evaluated according
  1334.             to precedence using    the rules listed above.
  1335.  
  1336.       ttttiiiimmmmeeeessss
  1337.            Print the accumulated user and system times for the
  1338.            shell and for processes run from    the shell.  The    return
  1339.            status is 0.
  1340.  
  1341.       ttttrrrraaaapppp [----llllpppp] [_a_r_g] [_s_i_g_s_p_e_c ...]
  1342.            The command _a_r_g is to be    read and executed when the
  1343.            shell receives signal(s)    _s_i_g_s_p_e_c.  If _a_r_g is absent or
  1344.            ----, all specified    signals    are reset to their original
  1345.            values (the values they had upon    entrance to the
  1346.            shell).    If _a_r_g is the null string the signal specified
  1347.            by each _s_i_g_s_p_e_c is ignored by the shell and by the
  1348.            commands    it invokes.  If    _a_r_g is ----pppp then the trap
  1349.            commands    associated with    each _s_i_g_s_p_e_c are displayed.
  1350.            If no arguments are supplied or if only ----pppp is given,
  1351.            ttttrrrraaaapppp prints the list of commands    associated with    each
  1352.            signal number.  Each _s_i_g_s_p_e_c is either a    signal name
  1353.            defined in <_s_i_g_n_a_l._h>, or a signal number.  If a
  1354.            _s_i_g_s_p_e_c is EEEEXXXXIIIITTTT (0) the command _a_r_g is executed on exit
  1355.            from the    shell.    If a _s_i_g_s_p_e_c is    DDDDEEEEBBBBUUUUGGGG, the command _a_r_g
  1356.            is executed after every _s_i_m_p_l_e _c_o_m_m_a_n_d (see SSSSHHHHEEEELLLLLLLL
  1357.            GGGGRRRRAAAAMMMMMMMMAAAARRRR above).    The ----llll option causes the shell to
  1358.            print a list of signal names and    their corresponding
  1359.            numbers.     Signals ignored upon entry to the shell
  1360.            cannot be trapped or reset.  Trapped signals are    reset
  1361.            to their    original values    in a child process when    it is
  1362.            created.     The return status is false if any _s_i_g_s_p_e_c is
  1363.            invalid;    otherwise ttttrrrraaaapppp returns true.
  1364.  
  1365.       ttttyyyyppppeeee [----aaaattttpppp] _n_a_m_e [_n_a_m_e ...]
  1366.            With no options,    indicate how each _n_a_m_e would be
  1367.            interpreted if used as a    command    name.  If the ----tttt
  1368.            option is used, ttttyyyyppppeeee prints a string which is one of
  1369.            _a_l_i_a_s, _k_e_y_w_o_r_d, _f_u_n_c_t_i_o_n, _b_u_i_l_t_i_n, or _f_i_l_e if _n_a_m_e is
  1370.            an alias, shell reserved    word, function,    builtin, or
  1371.            disk file, respectively.     If the    _n_a_m_e is    not found,
  1372.            then nothing is printed,    and an exit status of false is
  1373.            returned.  If the ----pppp option is used, ttttyyyyppppeeee either
  1374.            returns the name    of the disk file that would be
  1375.            executed    if _n_a_m_e    were specified as a command name, or
  1376.            nothing if type -t name _w_o_u_l_d _n_o_t _r_e_t_u_r_n    _f_i_l_e.  If a
  1377.            command is hashed, ----pppp prints the    hashed value, not
  1378.            necessarily the file that appears first in PPPPAAAATTTTHHHH.     If
  1379.            the ----aaaa option is    used, ttttyyyyppppeeee prints all of the places
  1380.  
  1381.  
  1382.  
  1383.      Page 21                         (printed 3/25/99)
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  1391.  
  1392.  
  1393.  
  1394.            that contain an executable named    _n_a_m_e.  This includes
  1395.            aliases and functions, if and only if the ----pppp option is
  1396.            not also    used.  The table of hashed commands is not
  1397.            consulted when using ----aaaa.     ttttyyyyppppeeee returns true if any of
  1398.            the arguments are found,    false if none are found.
  1399.  
  1400.       uuuulllliiiimmmmiiiitttt [----SSSSHHHHaaaaccccddddffffllllmmmmnnnnppppssssttttuuuuvvvv [_l_i_m_i_t]]
  1401.            Provides    control    over the resources available to    the
  1402.            shell and to processes started by it, on    systems    that
  1403.            allow such control.  The    value of _l_i_m_i_t can be a    number
  1404.            in the unit specified for the resource, or the value
  1405.            uuuunnnnlllliiiimmmmiiiitttteeeedddd.  The ----HHHH and ----SSSS options specify that the hard
  1406.            or soft limit is    set for    the given resource.  A hard
  1407.            limit cannot be increased once it is set; a soft    limit
  1408.            may be increased    up to the value    of the hard limit.  If
  1409.            neither ----HHHH nor ----SSSS is specified, both the    soft and hard
  1410.            limits are set.    If _l_i_m_i_t is omitted, the current value
  1411.            of the soft limit of the    resource is printed, unless
  1412.            the ----HHHH option is    given.    When more than one resource is
  1413.            specified, the limit name and unit are printed before
  1414.            the value.  Other options are interpreted as follows:
  1415.            ----aaaa   All    current    limits are reported
  1416.            ----cccc   The    maximum    size of    core files created
  1417.            ----dddd   The    maximum    size of    a process's data segment
  1418.            ----ffff   The    maximum    size of    files created by the shell
  1419.            ----llll   The    maximum    size that may be locked    into memory
  1420.            ----mmmm   The    maximum    resident set size
  1421.            ----nnnn   The    maximum    number of open file descriptors    (most
  1422.             systems do not allow this value to be set)
  1423.            ----pppp   The    pipe size in 512-byte blocks (this may not be
  1424.             set)
  1425.            ----ssss   The    maximum    stack size
  1426.            ----tttt   The    maximum    amount of cpu time in seconds
  1427.            ----uuuu   The    maximum    number of processes available to a
  1428.             single user
  1429.            ----vvvv   The    maximum    amount of virtual memory available to
  1430.             the    shell
  1431.  
  1432.            If _l_i_m_i_t    is given, it is    the new    value of the specified
  1433.            resource    (the ----aaaa    option is display only).  If no    option
  1434.            is given, then ----ffff is assumed.  Values are in 1024-byte
  1435.            increments, except for ----tttt, which    is in seconds, ----pppp,
  1436.            which is    in units of 512-byte blocks, and ----nnnn and    ----uuuu,
  1437.            which are unscaled values.  The return status is    0
  1438.            unless an invalid option    is encountered,    a non-numeric
  1439.            argument    other than uuuunnnnlllliiiimmmmiiiitttteeeedddd is    supplied as _l_i_m_i_t, or
  1440.            an error    occurs while setting a new limit.
  1441.  
  1442.       uuuummmmaaaasssskkkk    [----pppp] [----SSSS] [_m_o_d_e]
  1443.            The user    file-creation mask is set to _m_o_d_e.  If _m_o_d_e
  1444.            begins with a digit, it is interpreted as an octal
  1445.            number; otherwise it is interpreted as a    symbolic mode
  1446.  
  1447.  
  1448.  
  1449.      Page 22                         (printed 3/25/99)
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.  
  1456.      BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))        GGGGNNNNUUUU    ((((1111999999996666 MMMMaaaarrrrcccchhhh 22220000))))          BBBBAAAASSSSHHHH____BBBBUUUUIIIILLLLTTTTIIIINNNNSSSS((((1111))))
  1457.  
  1458.  
  1459.  
  1460.            mask similar to that accepted by    _c_h_m_o_d(1).  If _m_o_d_e is
  1461.            omitted,    or if the ----SSSS option is supplied, the current
  1462.            value of    the mask is printed.  The ----SSSS option causes the
  1463.            mask to be printed in symbolic form; the    default    output
  1464.            is an octal number.  If the ----pppp option is    supplied, and
  1465.            _m_o_d_e is omitted,    the output is in a form    that may be
  1466.            reused as input.     The return status is 0    if the mode
  1467.            was successfully    changed    or if no _m_o_d_e argument was
  1468.            supplied, and false otherwise.
  1469.  
  1470.       uuuunnnnaaaalllliiiiaaaassss [-aaaa] [_n_a_m_e ...]
  1471.            Remove _n_a_m_es from the list of defined aliases.  If ----aaaa
  1472.            is supplied, all    alias definitions are removed.    The
  1473.            return value is true unless a supplied _n_a_m_e is not a
  1474.            defined alias.
  1475.  
  1476.       uuuunnnnsssseeeetttt    [-ffffvvvv] [_n_a_m_e ...]
  1477.            For each    _n_a_m_e, remove the corresponding variable    or
  1478.            function.  If no    options    are supplied, or the ----vvvv    option
  1479.            is given, each _n_a_m_e refers to a shell variable.    Read-
  1480.            only variables may not be unset.     If ----ffff is specifed,
  1481.            each _n_a_m_e refers    to a shell function, and the function
  1482.            definition is removed.  Each unset variable or function
  1483.            is removed from the environment passed to subsequent
  1484.            commands.  If any of RRRRAAAANNNNDDDDOOOOMMMM, SSSSEEEECCCCOOOONNNNDDDDSSSS, LLLLIIIINNNNEEEENNNNOOOO, HHHHIIIISSSSTTTTCCCCMMMMDDDD,
  1485.            or DDDDIIIIRRRRSSSSTTTTAAAACCCCKKKK are unset, they lose    their special
  1486.            properties, even    if they    are subsequently reset.     The
  1487.            exit status is true unless a _n_a_m_e does not exist    or is
  1488.            readonly.
  1489.  
  1490.       wwwwaaaaiiiitttt [_n]
  1491.            Wait for    the specified process and return its
  1492.            termination status.  _n may be a process ID or a job
  1493.            specification; if a job spec is given, all processes in
  1494.            that job's pipeline are waited for.  If _n is not    given,
  1495.            all currently active child processes are    waited for,
  1496.            and the return status is    zero.  If _n specifies a    non-
  1497.            existent    process    or job,    the return status is 127.
  1498.            Otherwise, the return status is the exit    status of the
  1499.            last process or job waited for.
  1500.  
  1501.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  1502.       bash(1), sh(1)
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.      Page 23                         (printed 3/25/99)
  1516.  
  1517.  
  1518.  
  1519.